/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cc.altius.service;

import cc.altius.domain.Password;
import cc.altius.domain.Role;
import cc.altius.domain.User;
import java.util.List;

/**
 *
 * @author Akil Mahimwala
 */
public interface UserService {

    public List<User> getUserList();

    public List<Role> getRoleList();

    public int addUser(User user);

    public void updateUser(User user);

    public User getUserByUsername(String username);

    public boolean existUserByUsername(String username);

    public User getUserByUserId(int userId);

    public boolean confirmPassword(Password password);

    public void updatePassword(Password password, int offset);

    public List<String> getBusinessFunctionsForUserId(int userId);

    public int incrementFailedCountForUsername(String username);

    public void resetFailedCountForUserId(int userId);
    
     // FOR REPORT
    public List<User> getUserListForReport();
    
    public List<User> getActiveUserListForTicket();
}
